//package com.cos.hospital.code.helper;
//
//import android.content.Context;
//import android.graphics.Rect;
//import android.view.*;
//
///**
// * @Description: <p>
// * @Author: Kosmos
// * @Date: 2018年10月09日 16:45
// * @Email: KosmoSakura@foxmail.com
// */
//public class KeyboardChangeListener implements ViewTreeObserver.OnGlobalLayoutListener {
//    private int mScreenHeight = 0;
//    private Rect mRect = new Rect();
//
//    private int getScreenHeight() {
//        if (mScreenHeight > 0) {
//            return mScreenHeight;
//        }
//        mScreenHeight = ((WindowManager) getContext().getSystemService(Context.WINDOW_SERVICE))
//            .getDefaultDisplay().getHeight();
//        return mScreenHeight;
//    }
//
//    private void onKeyboardStateChanged(boolean isActive, int keyboardHeight) {
//        if (isActive) {
//            mSwitchBtn.setFocusable(false);
//            mSwitchBtn.setFocusableInTouchMode(false);
//            mEditText.requestFocus();
//            if (mSwitchBtn.isSelected()) { // 表情打开状态下
//                mPanelView.setVisibility(View.GONE);
//                mSwitchBtn.setSelected(false);
//            }
//            SPUtils.saveInt(mContext, COLUMN_NAME, keyboardHeight);
//            ViewGroup.LayoutParams params = mPanelView.getLayoutParams();
//            if (!(params.height == keyboardHeight)) {
//                params.height = keyboardHeight;
//                mPanelView.setLayoutParams(params);
//            }
//        } else {
//            if (mSwitchBtn.isSelected()) {
//                return;
//            }
//        }
//    }
//
//    @Override
//    public void onGlobalLayout() {
//        // 获取当前页面窗口的显示范围
//        getWindowVisibleDisplayFrame(mRect);
//        int screenHeight = getScreenHeight();
//        int keyboardHeight = screenHeight - mRect.bottom; // 输入法的高度
//        boolean isActive = false;
//        if (Math.abs(keyboardHeight) > screenHeight / 5) {
//            isActive = true; // 超过屏幕五分之一则表示弹出了输入法
//        }
//        mIsKeyboardActive = isActive;
//        onKeyboardStateChanged(mIsKeyboardActive, keyboardHeight);
//    }
//}
